import Notify from '@vant/weapp/notify/notify';
import Toast from '@vant/weapp/toast/toast'
import {
    reqGoodDetail,
    reqAddOrUpdataCart
} from "../../api/index"
Page({
    data: {
        // 商品id
        goodsId: 0,
        // 商品详细信息
        goodsMessage: {},
        // 动作面板显示
        showSheet: false,
        // 区分是加入购物车还是立即购买
        type: '',
        // 收集的商品数量
        skuNum: 1,
        // 收集备注信息
        remarks: "",
    },
    onLoad(query) {
        this.setData({
            goodsId: query.goodsId
        })
        // 获取商品详情信息
        this.getGoodDetail(this.data.goodsId)
    },
    // 获取商品详情信息
    async getGoodDetail(goodsId) {
        const result = await reqGoodDetail(goodsId)
        // console.log(result);
        if (result.code == 200) {
            this.setData({
                goodsMessage: result.data
            })
        }
    },
    // 加入购物车
    addCart() {
        // 显示动作面板
        this.setData({
            showSheet: true,
            type: "cart"
        })
    },
    // 立即购买
    nowBuy() {
        // 显示动作面板
        this.setData({
            showSheet: true,
            type: "buy"
        })
    },
    //点击动作面板后面的遮罩层触发 
    overPlay() {
        // 影藏动作面板
        this.setData({
            showSheet: false,
            type: ""
        })
    },
    // 收集加入购物车的数组skuNum
    getSkuNum(event) {
        this.setData({
            skuNum: event.detail
        })
    },
    // 确定对应按钮回调
    confirm() {
        // 判断是否登录
        const token = wx.getStorageSync('TOKEN')
        if (!token) {
            wx.navigateTo({
                url: '/pages/login/login',
            })
        }
        // 判断有没有祝福语
        if (this.data.remarks == "") {
            Toast('祝福语是必填的，写上您的祝福语，给心爱的他（她）送上你的祝福（请勿填写特殊符号或表情符号）')
            return
        }

        // 区分加入购物车 还是 立即购买
        if (this.data.type == 'cart') {
            // 加入购物车函数
            this.addGoodsToCart();
        } else if (this.data.type == 'buy') {
            // 立即购买
            this.goOrder()
        }
    },
    // 加入购物车函数
    async addGoodsToCart() {
        // 发起请求
        const result = await reqAddOrUpdataCart(this.data.goodsId, this.data.skuNum, this.data.remarks)
        // 关闭弹框
        this.setData({
            showSheet: false,
            remarks: "",
            type: ''
        })

        if (result.code == 200) {

        } else {
            // 警告通知
            Notify({
                type: 'warning',
                message: result.data
            });
        }
    },
    // 跳转至购买页面
    goOrder() {

        wx.navigateTo({
            url: `/pages/order/order?goodsId=${this.data.goodsId}&remarks=${this.data.remarks}`,
        })

        // 清除祝福语
        this.setData({
            remarks: ''
        })
    }
})